package com.ktjiaoyu.utils.fastjson2;

import com.alibaba.fastjson2.util.DateUtils;
import org.springframework.core.convert.converter.Converter;

import java.util.Date;

public class String2DateConverter implements Converter<String, Date> {
    //支持格式转换的日期格式（有默认值，可以注入）
    private String[] dateFormats = new String[]{"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy/MM/dd"};
    //可以注入
    public void setDateFormats(String[] dateFormats) {
        this.dateFormats = dateFormats;
    }

    @Override
    public Date convert(String source) {
        for (int i = 0; i < dateFormats.length; i++){
            try{
                //尝试每一个格式进行转换
                return DateUtils.parseDate(source, dateFormats[i]);
            }catch (Exception  e){
                e.printStackTrace();
            }
        }
        return null;
    }
}
